import type {
  DepartData,
  OrderDetail,
  OrderListData,
  OrderParams,
  OrderPreData,
  OrderPreParams,
  OrderQuery,
} from '@/types/consult'
import { request } from '@/utils/http'

/**
 * 医生科室列表
 */
export const departmentListApi = () => {
  return request.get<null, DepartData[]>('/dep/all')
}

/**
 * 生成预支付订单
 */
export const preOrderApi = (params: OrderPreParams) => {
  return request.get<null, OrderPreData>('/patient/consult/order/pre', {
    params,
  })
}

/**
 * 问诊-保存/修改问诊订单(创建订单 -> 返回订单id -> 支付)
 */
export const getOrderDetailApi = (data: OrderParams) => {
  return request.post<null, { id: string }>('/patient/consult/order', data)
}

/**
 * 问诊订单详情
 */
export const orderDetailApi = (orderId: string) => {
  return request.get<null, OrderDetail>('/patient/consult/order/detail', { params: { orderId } })
}

/**
 * 医生问诊列表
 */
export const orderListApi = (data: OrderQuery) => {
  return request.get<null, OrderListData>('/patient/consult/order/list', { params: data })
}
